package com.suneee.shop.dao;

import java.util.List;
import java.util.Map;

import com.suneee.context.page.Page;
import com.suneee.orm.Dao;
import com.suneee.shop.bean.ShopSearchBean;
import com.suneee.shop.entity.Shop;

public interface ShopDao extends Dao<Shop, Integer> {

	/**
	 * 判断店铺名称是否唯一
	 * 
	 * @param name
	 * @return
	 */
	public boolean existsName(String name);

	/**
	 * 判断店铺名称是否唯一
	 * 
	 * @param name
	 * @return
	 */
	public boolean existsId(int id);

	/**
	 * 获取单条店铺信息
	 * 
	 * @param shopId
	 * @return
	 */
	public Shop get(int shopId);

	/**
	 * 修改店铺分类信息
	 * 
	 * @param shop
	 */
	public void updateShop(Shop shop);

	/**
	 * 删除店铺分类信息
	 * 
	 * @param shopId
	 */
	public void deleteByShopId(int shopId);

	/**
	 * 查询店铺分类
	 * 
	 * @param name
	 * @return
	 */
	public Page<Map<String, Object>> findShop(ShopSearchBean bean);

	/**
	 * 禁用或激活店铺
	 * 
	 * @param shopId
	 * @param status
	 */
	public void updateEnabled(int shopId, boolean status);

	/**
	 * 修改店铺对接配置
	 * 
	 * @param shopId
	 * @param ruleInfo
	 * @param status
	 */
	public void updateRuleInfo(int shopId, String ruleInfo, String status);

	/**
	 * 修改店铺代理URL
	 * 
	 * @param shopId
	 * @param proxyURL
	 * @param status
	 */
	public void updateProxyURL(int shopId, String proxyURL, String status);

	/**
	 * 获取该企业所有的店铺
	 * 
	 * @return
	 */
	public List<Shop> listEnterpriseShop(String enterpriseCode);
	
	
	public List<Shop> shopByShopName(String name);
	
	/**
	 * 获取待对接店铺，根据企业编码
	 * @return
	 */
	public List<Shop> toBeButtShopList(String enterpriseCode);
	
}
